namespace PathX
{
    /// <summary>
    /// Interface for path finder options
    /// </summary>
    public interface IPathFinderOptions
    {
        /// <summary>
        /// 优先级
        /// </summary>
        int pathingPriority { get; set; }

        /// <summary>
        /// 出发点不可访问时，设置一个最大附件搜索值
        /// </summary>
        int maxEscapeCellDistanceIfOriginBlocked { get; set; }

        /// <summary>
        /// 丝滑处理（让路线更自然）
        /// </summary>
        bool usePathSmoothing { get; set; }

        /// <summary>
        /// 是否禁止对角线移动
        /// </summary>
        bool preventDiagonalMoves { get; set; }

        /// <summary>
        /// 如果目标阻挡，是否导航到最近可能的位置
        /// </summary>
        bool navigateToNearestIfBlocked { get; set; }
    }
}